package com.example.basic.web.service.dataCode;

import com.example.basic.core.result.Result;
import com.example.basic.web.model.dataCode.DataCode;

import java.util.List;

/**
 * <p>
 * 系统数据代码表 服务类
 * </p>
 *
 * @author FanJq
 * @since 2023-09-19
 */
public interface DataCodeService {

    /**
     * @Description
     * 新增系统代码
     * @date 2023/9/19 15:35
     * @author FanJq
     * @param sysDataCode
     * @return {@link Result}
     */
    DataCode saveDataCode(DataCode sysDataCode);

    /**
     * @Description
     * 根据代码名称生成最大的系统代码
     * @date 2023/9/19 15:35
     * @author FanJq
     * @param dataCodeName
     * @return {@link String}
     */
    String generateDataCodeNo(String dataCodeName);

    List<String> generateDataCodeNoList(String dataCodeName, Integer count);

    /**
     * 生成编码 生成规则：年+月+日+4位流水号 zq
     * @param dataCodeName 编码名称
     * @return
     */
    String generateCode(String dataCodeName);
}